package bat.iog.hytool.tomcat.container;

import iog.hytool.tomcat.core.LifecycleException;
import iog.hytool.tomcat.core.LifecycleMBeanBase;
import iog.hytool.tomcat.startup.Catalina;

import javax.naming.Context;
import java.io.File;
import java.util.concurrent.ScheduledExecutorService;

public class StandardServer extends LifecycleMBeanBase implements Server {

    //The set of Services associated with this Server.
    private Service services[] = new Service[0];
    
    protected void initInternal() throws LifecycleException {
        super.initInternal();
        
        
        // Initialize our defined Services
        for (Service service : services) {
            service.init();
        }
    }
    
    
    @Override
    protected void startInternal() throws LifecycleException {
        
    }

    @Override
    protected void stopInternal() throws LifecycleException {

    }

    @Override
    public Context getGlobalNamingContext() {
        return null;
    }

    @Override
    public int getPort() {
        return 0;
    }

    @Override
    public void setPort(int port) {

    }

    @Override
    public int getPortOffset() {
        return 0;
    }

    @Override
    public void setPortOffset(int portOffset) {

    }

    @Override
    public int getPortWithOffset() {
        return 0;
    }

    @Override
    public String getAddress() {
        return null;
    }

    @Override
    public void setAddress(String address) {

    }

    @Override
    public String getShutdown() {
        return null;
    }

    @Override
    public void setShutdown(String shutdown) {

    }

    @Override
    public void setParentClassLoader(ClassLoader parent) {

    }

    @Override
    public Catalina getCatalina() {
        return null;
    }

    @Override
    public void setCatalina(Catalina catalina) {

    }

    @Override
    public File getCatalinaBase() {
        return null;
    }

    @Override
    public void setCatalinaBase(File catalinaBase) {

    }

    @Override
    public File getCatalinaHome() {
        return null;
    }

    @Override
    public void setCatalinaHome(File catalinaHome) {

    }

    @Override
    public int getUtilityThreads() {
        return 0;
    }

    @Override
    public void setUtilityThreads(int utilityThreads) {

    }

    @Override
    public void addService(Service service) {

    }

    @Override
    public void await() {

    }

    @Override
    public Service findService(String name) {
        return null;
    }

    @Override
    public Service[] findServices() {
        return new Service[0];
    }

    @Override
    public void removeService(Service service) {

    }

    @Override
    public Object getNamingToken() {
        return null;
    }

    @Override
    public ScheduledExecutorService getUtilityExecutor() {
        return null;
    }
}
